package games 
{
	import org.flixel.FlxState;
	import org.flixel.FlxG;
	import org.flixel.FlxText;
	
	/**
	 * ...
	 * @author Jacowaco
	 */
	public class BaseGame extends FlxState 
	{
		public var gameState:String;
		
		public function BaseGame() 
		{
			
		}
		
		override public function create():void 
		{
			gameState = "playing";
			
			FlxG.mouse.hide();
		}
		
		override public function update():void 
		{
			super.update();
			
			if (gameState == "won" || gameState == "lost")
			{
				if(FlxG.keys.justPressed("SPACE"))			// esto es raro... no deberia estar aca... si ya lo hace en el main...
					onReplay(); //no, porque no lo hace el main, lo hace el MenuState, y este es otro state diferente, el CharlyGame
					//igual esto de reempezar el juego con space es para testear más rápido, no creo que este en la version final
			}
		}
		
		public function endGame(_won:Boolean):void
		{
			FlxG.mouse.show();
			
			//trace(_won);
			var t:FlxText;
			if (_won)
			{
				gameState = "won";
				t = new FlxText(0,80,FlxG.width,"GANASTE!");
			}
			else
			{
				gameState = "lost";
				t = new FlxText(0,80,FlxG.width,"PERDISTE!");
			}
			t.scrollFactor.x = t.scrollFactor.y = 0;
			t.size = 30;
			t.alignment = "center";
			add(t);
			
			var replayBtn:NormalButton = new NormalButton(0, FlxG.height / 2 - 70, onReplay, null, "REJUGAR");
			replayBtn.screenCenter();
			add(replayBtn);
			
			var menuBtn:NormalButton = new NormalButton(0, FlxG.height / 2 + 10, onMenu, null, "MENU");
			menuBtn.screenCenter();
			add(menuBtn);
		}
		
		protected function onReplay():void
		{
			//cada clase lo reemplaza
		}
		
		protected function onMenu():void
		{
			FlxG.switchState(new MenuState());
		}
		
	}

}